Peças e Serviços

Row

Total de peças 2020 pelo time de marketing

1992

Total de peças 2020 pelo time de produtos

776

Peças produzidas no mês

263

Peças aguardando aprovação no mês

86

Novas peças no mês

2

Row

Produção por colaborador

Tipos de peças por colaborador

10 tipos de peças mais produzidas

Row

Produção de peça no mês por colaborador

Serviços prestados

Cooperativas e Histórico de peças

Row

Total de peças 2020 pelo time de marketing

1992

Total de peças 2020 pelo time de produtos

776

Peças produzidas no mês

263

Peças aguardando aprovação no mês

86

Novas peças no mês

2

Row

Quantas peças foram feitas pelo time de marketing?

10 Pontos focais que mais pedem

10 cooperaivas que mais pedem

Row

Produção de peças pelo time de Marketing mensal de julho de 2018 até o presente

Previsão de produção para 2020

Histórico de prestação de serviços

Row

Total de peças 2020 pelo time de marketing

1992

Total de peças 2020 pelo time de produtos

776

Peças produzidas no mês

263

Peças aguardando aprovação no mês

86

Novas peças no mês

2

Row

Características da equipe de Produtos

Interrelação dos chamados

Row

Total de peças 2020 pelo time de marketing

1992

Total de peças 2020 pelo time de produtos

776

Peças produzidas no mês

263

Peças aguardando aprovação no mês

86

Novas peças no mês

2

Row

Origem e destino dos chamados

---
title: "RESULTADO MENSAL"
output: 
  flexdashboard::flex_dashboard:
    orientation: rows
    #vertical_layout: fill
    vertical_layout: scroll
    logo: pp.png
    social: [ "twitter", "facebook","google +", "linkedin", "pinterest" ]
    source_code: embed
    #runtime: shiny
---

```{r setup, include=FALSE}
#devtools::install_github("jeromefroe/circlepackeR")
#library(devtools)
library(flexdashboard)
library(readxl)
library(tidyr)
library(plotly)
library(ggmap)
library(RColorBrewer)
library(treemap)
library(hrbrthemes)
library(circlepackeR)
library(data.tree)
library(babynames)
library(viridis)
library(dplyr)
library(lubridate)
library(DT)
#library(d3treeR)
library(chorddiag)
library(circlize)
library(igraph)
library(networkD3)

#setwd("M:/14_Comunicação_e_Marketing/33_Equipe/Pedro Longhin/PRINCIPAL/TRABALHOS GERAIS/PLANILHAS_PROJETOS/07.PRODUTOS E INSTITUCIONAL")
#setwd("D:/GoogleG Drive/Trabalho/SICOOB/DASHBOARD")
setwd("C:/Users/pedro.silva/Desktop/R LOCAL/01.PRODUTOS MENSAL")

#função criada para computar quantos dias tem o mês
numberOfDays <- function(date) {
    m <- format(date, format="%m")

    while (format(date, format="%m") == m) {
        date <- date + 1
    }

    return(as.integer(format(date - 1, format="%d")))
}

#maindata$`DATA DE SOLICITAÇÃO`=ymd(maindata$`DATA DE SOLICITAÇÃO`)
#maindata$`DATA DE ENTREGA`=ymd(maindata$`DATA DE ENTREGA`)

produtos <- read_excel("C:/Users/pedro.silva/OneDrive - Sicoob/PAUTA_MARKETING/PRODUTOS/PROJETOS_PRODUTOS.xlsm", sheet = 1)
institucional <- read_excel("C:/Users/pedro.silva/OneDrive - Sicoob/PAUTA_MARKETING/INSTITUCIONAL/PROJETOS_INSTITUCIONAL.xlsm", sheet = 1)

maindata=merge(produtos, institucional, all=T)
maindata$`DATA DE ENTREGA`=as.Date(maindata$`DATA DE ENTREGA`, origin = "1899-12-30")

maindata=maindata %>% filter(!`DATA DE ENTREGA`% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))

produtos=maindata %>% filter(NUCLEO=="PRODUTOS") %>% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))

institucional=maindata %>% filter(NUCLEO=="INSTITUCIONAL") %>% filter(`DATA DE ENTREGA`>=(as.Date(cut(Sys.Date(), "month")) %m-% months(1)) & `DATA DE ENTREGA`<(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1)))))

#comando para adicionar o mês anterior 
#(as.Date(cut(Sys.Date(), "month")) %m-% months(1))

#comando + função numberOfDays para identificar o ultimo dia do mês passado
#(as.Date(cut(Sys.Date(), "month")) %m-% months(1) + numberOfDays((as.Date(cut(Sys.Date(), "month")) %m-% months(1))) - 1)

#setwd("M:/14_Comunicação_e_Marketing/33_Equipe/Pedro Longhin/PRINCIPAL/ANALISE DE DADOS/FONTE_GLPI_TAREFAS")

glpi_2020=read_excel("glpi.xlsx")
```

Peças e Serviços {data-navmenu="Produtos"}
=====================================

Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```

### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```

### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```

### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```

### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```

Row
-------------------------------------

### Produção por colaborador

```{r}
proporcaoprodutos=data.frame(table(produtos$`TÉCNICO RESPONSÁVEL`))
names(proporcaoprodutos)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
  group=proporcaoprodutos$Funcionário,
  value=proporcaoprodutos$Quantidade
)


plot_ly(data, labels = ~group, values = ~value, type = 'pie') %>%
  layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
         yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))


```
   
### Tipos de peças por colaborador
```{r}
teste1=t(table(produtos$`TÉCNICO RESPONSÁVEL`,produtos$PEÇA))

teste2=data.frame(teste1)
names(teste2)=c("peca", "grupo1", "value")

teste2=teste2 %>% filter(value != 0)

teste2$pathString <- paste("world", teste2$grupo1 , teste2$peca, sep = "/")

population <- as.Node(teste2)

circlepackeR(population, size = "value")
``` 


### 10 tipos de peças mais produzidas

```{r}
pecas_acumuladas=data.frame(table(produtos$PEÇA))

plot_ly(pecas_acumuladas, x = ~reorder(Var1, -Freq), y = ~Freq, type = 'bar', name = 'SF Zoo') %>%
    layout(barmode = 'group', xaxis = list(title = "Tipo de peça", range = c(-0.5,9.5)), yaxis = list(title="Quantidade produzida"))


```

Row
----------------------------------

### Produção de peça no mês por colaborador
```{r}
demandas_mes=produtos


teste_pecas=data.frame(table(demandas_mes$`TÉCNICO RESPONSÁVEL`, demandas_mes$`DATA DE ENTREGA`))
names(teste_pecas)=c("Colaborador", "year", "n")
teste_pecas$year=as.Date(teste_pecas$year)

# Plot
p <- teste_pecas %>% 
  ggplot( aes(x=year, y=n, fill=Colaborador, text=n)) +
  geom_area( )+
  scale_fill_viridis(discrete = TRUE)+
  #theme(legend.position="none") +
  theme_ipsum()+
  scale_x_date(date_labels = "%e %B")
  #theme(legend.position="none")

# Turn it interactive
p <- ggplotly(p, tooltip="text") %>% layout(xaxis = list(title="Dia do mês"), yaxis = list(title="Quantidade de peças"))
p
```


### Serviços prestados

```{r}
proporcaoprodutos=data.frame(table(produtos$CATEGORIA))
names(proporcaoprodutos)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
  group=proporcaoprodutos$Funcionário,
  value=proporcaoprodutos$Quantidade
)


plot_ly(data, labels = ~group, values = ~value) %>%
  add_pie(hole = 0.6) %>%
  layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
         yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))


```


Cooperativas e Histórico de peças {data-navmenu="Produtos"}
=====================================

Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```

### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```

### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>%   nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```

### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```

### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```

Row
-------------------------------------

### Quantas peças foram feitas pelo time de marketing?

```{r}
proporcaotime = merge(produtos, institucional, all=T) %>% filter(STATUS!="NOVO") %>% filter(NUCLEO %in% c("PRODUTOS","INSTITUCIONAL")) %>% filter(CATEGORIA!="Dúvidas/Envio")
proporcaotime = data.frame(table(proporcaotime$NUCLEO))
names(proporcaotime)=c("Funcionário", "Quantidade")
# Create Data
data <- data.frame(
  group=proporcaotime$Funcionário,
  value=proporcaotime$Quantidade
)


plot_ly(data, labels = ~group, values = ~value, type = 'pie') %>%
  layout(xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
         yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))

```
   
### 10 Pontos focais que mais pedem
```{r}
pecas_acumuladas=data.frame(table(produtos$`PONTO FOCAL`))

plot_ly(pecas_acumuladas, x = ~reorder(Var1, -Freq), y = ~Freq, type = 'bar', name = 'SF Zoo') %>%
    layout(barmode = 'group', xaxis = list(title = "Ponto focal", range = c(-0.5,9.5)), yaxis = list(title="Quantidade de peças pedidas"))

``` 


### 10 cooperaivas que mais pedem

```{r}
demandas_cooperativas=data.frame(table(produtos$`COOPERATIVA SOLICITANTE`))
names(demandas_cooperativas)=c("Cooperativa", "Frequência")
demandas_cooperativas=demandas_cooperativas %>% arrange(Frequência)
n=demandas_cooperativas %>% nrow()
if(n>10){
demandas_cooperativas=demandas_cooperativas %>% slice((n-10):n)
}

p <- plot_ly(demandas_cooperativas, x = ~reorder(Cooperativa, -Frequência), y = ~Frequência, type = 'bar', name = 'SF Zoo') %>%
    layout(barmode = 'group', xaxis = list(title = "Cooperativas", range = c(-0.5,9.5)))

p

```

Row
----------------------------------

### Produção de peças pelo time de Marketing mensal de julho de 2018 até o presente
```{r}
peca_mes=c(184,	178, 284, 113, 494, 147, 406, 625, 1715, 901, 1009, 570, 652, 632, 537, 457, 390, 246, 563, 352, 535, 514)
data <- seq(as.Date("2018/07/1"), as.Date("2020/04/1"), "month")
dadostemporal=data.frame(peca_mes, data)
names(dadostemporal)=c('Peça', 'Mês')

temporal <- ggplot(data = dadostemporal,
                   mapping = aes(x = Mês, y = Peça)) +
  geom_point() +
  geom_line() +
  geom_area(fill="#00AE9D", alpha=0.5)+
  theme_ipsum()
ggplotly(temporal)
```


### Previsão de produção para 2020

```{r}
peca_mes=c(406, 625, 1715, 901, 1009, 570, 652, 632, 537, 457, 390, 246)
peca_mes_2020=peca_mes+200+rnorm(12, 0, 12)
peca_mes_2020=round(peca_mes_2020,0)
data <- seq(as.Date("2020/01/1"), as.Date("2020/12/1"), "month")
dadostemporal=data.frame(peca_mes_2020, data)
names(dadostemporal)=c('Peça', 'Mês')

temporal <- ggplot(data = dadostemporal,
                   mapping = aes(x = Mês, y = Peça)) +
  geom_point() +
  geom_line() +
  geom_area(fill="#00AE9D", alpha=0.5)+
  theme_ipsum()
ggplotly(temporal)
```

Histórico de prestação de serviços {data-navmenu="Produtos"}
=====================================

Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```

### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```

### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>%   nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```

### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```

### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```

Row
-----------------------

### Características da equipe de Produtos

```{r}
polar=maindata %>% filter(NUCLEO=="PRODUTOS")

proporcaopolar=data.frame(table(polar$CATEGORIA))

p <- plot_ly(
    type = 'scatterpolar',
    r = proporcaopolar$Freq,
    theta = proporcaopolar$Var1,
    fill = 'toself'
  ) %>%
  layout(
    polar = list(
      radialaxis = list(
        visible = T,
        range = c(0, max(proporcaopolar[,2]))
      )
    ),
    showlegend = F
  )

p

```

Interrelação dos chamados {data-navmenu="Produtos"}
=====================================

Row {data-width=150}
--------------------------------------
### Total de peças 2020 pelo time de marketing
```{r}
pecasupertime=maindata %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecasupertime,icon = "fa-calendar",caption = "Histórico Super Time",color = "#7DB61C")
```

### Total de peças 2020 pelo time de produtos
```{r}
pecaprodutosanual=maindata %>% filter(STATUS != "NOVO") %>% filter(NUCLEO=="PRODUTOS") %>% filter(CATEGORIA!="Dúvidas/Envio") %>% nrow()
valueBox(value = pecaprodutosanual,icon = "fa-thumbs-up",caption = "Histórico Produtos",color = "#00AE9D")
```

### Peças produzidas no mês
```{r}
pecaprodutosmensal=produtos %>% filter(STATUS != "NOVO") %>% filter(CATEGORIA!="Dúvidas/Envio") %>%   nrow()
valueBox(value = pecaprodutosmensal,icon = "fa-pencil",caption = "Peças produzidas no mês",color = "#49479D")
```

### Peças aguardando aprovação no mês
```{r}
aguardando=produtos %>% filter(STATUS %in% c("AGUARDANDO APROVAÇÃO", "STAND-BY") ) %>% nrow()
valueBox(value = aguardando,icon = "fa-comments",caption = "Peças Aguardando Retorno ou Stand-by", color = "orange")
```

### Novas peças no mês
```{r}
novas=produtos %>% filter(STATUS == "NOVO") %>% nrow()
valueBox(value = novas,icon = "fa-user-plus",caption = "Novas peças", color = "coral")
```

Row
-----------------------

### Origem e destino dos chamados

```{r}
# Create dummy data

glpi <- glpi_2020 %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in%  c("Ana Clara Batista dos Santos", "Katia Caldeira Borges", "Kenny Maicon Barcelos Silva", "Samuel Ferreira Lima"), "110 - Marketing Institucional")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in%  c("João Victor Martins Costa"), "112 - Marketing de Produtos")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in%  c("Brenda Marilia de Jesus", "Marina Silva Romagnoli - 2015", "Michel Vieira de Paiva"), "111 - Assessoria De Imprensa")) %>% mutate(`Atribuído para - Técnico` = replace(`Atribuído para - Técnico`, `Atribuído para - Técnico` %in%  c("Mônada Swany de Castro Silva Lopes"), "119 - Mídias Digitais - Marketing")) %>% filter(`Atribuído para - Técnico` %in% c("112 - Marketing de Produtos", "110 - Marketing Institucional", "111 - Assessoria De Imprensa", "119 - Mídias Digitais - Marketing") )

m=data.frame(table(glpi$`Atribuído para - Técnico`, glpi$Categoria))

groupColors <- c("#00AE9D", "#7DB61C", "#003641", "#49479D")

matriz <- matrix(m$Freq,
            byrow = TRUE,
            nrow = length(table(m$Var1)), ncol = length(table(m$Var1)))


colors <- names(table(m$Var1))
dimnames(matriz) <- list(Origem = colors,
                    Destino = colors)
groupColors <- c("#00AE9D", "#7DB61C", "#003641", "#49479D")

chorddiag(matriz, groupColors = groupColors, groupnamePadding = 20)
```